home *** CD-ROM | disk | FTP | other *** search
/ Software Vault: The Gold Collection / Software Vault - The Gold Collection (American Databankers) (1993).ISO / cdr48 / vdl020d.zip / VOUT.DOC < prev    next >
Text File  |  1993-04-14  |  25KB  |  1,196 lines

  1. {
  2.  ════════════════════════════════════════════════════════════════════════════
  3.  
  4.  Visionix Output Unit (VOUT)
  5.  Copyright 1991,92,93 Visionix
  6.  ALL RIGHTS RESERVED
  7.  
  8.  ────────────────────────────────────────────────────────────────────────────
  9.  
  10.  Revision history in reverse chronological order:
  11.  
  12.  Initials  Date      Comment
  13.  ────────  ────────  ────────────────────────────────────────────────────────
  14.  
  15.  lpg       03/16/93  Added Source Documentation
  16.  
  17.  mep       02/11/93  Cleaned up code for beta release
  18.  
  19.  jrt       02/08/93  Sync with beta 0.12 release
  20.  
  21.  jrt       02/08/93  Added VOutGetScreenSize
  22.  
  23.  jrt       12/07/92  Sync with beta 0.11 release
  24.  
  25.  jrt       11/21/92  Sync with beta 0.08
  26.  
  27.  jrt       09/01/92  First logged revision.
  28.  
  29.  ════════════════════════════════════════════════════════════════════════════
  30. }
  31.  
  32. {$V-}
  33.  
  34. Unit VOut;
  35.  
  36.  
  37. Uses
  38.  
  39.   VTypes,
  40.   VMulti;
  41.  
  42. {────────────────────────────────────────────────────────────────────────────}
  43.  
  44. {
  45.   OutDriver --> Hardware
  46.   OutDriver --> BIOS
  47.   OutDriver --> DOS/ANSI
  48.   OutDriver --> Crt
  49.   OutDriver --> OpCrt
  50. }
  51.  
  52. Const
  53.  
  54.   ODF_DriverNew     = 1;
  55.   ODF_DriverOff     = 2;
  56.   ODF_DriverOn      = 3;
  57.   ODF_DriverDispose = 4;
  58.   ODF_WriteChar     = 5;
  59.   ODF_WriteBlock    = 6;
  60.   ODF_WriteVert     = 7;  { <^V><1><len><chars...> }
  61.   ODF_ClrEOL        = 8;
  62.   ODF_ClrScr        = 9;
  63.   ODF_DelLine       = 10;
  64.   ODF_InsLine       = 11;
  65.   ODF_GotoXY        = 12;
  66.   ODF_Window        = 13; { <^V><A><X1><Y1><X2><Y2>            }
  67.   ODF_ColorText     = 14;
  68.   ODF_ColorBack     = 15;
  69.  
  70.   ODF_GetWin        = 16; { <^V><B>                            }
  71.   ODF_GetAttr       = 17; { <^V><C>                            }
  72.   ODF_SetAttr       = 18;
  73.   ODF_GetXY         = 19; { <^V><D>                            }
  74.   ODF_GetNumScreens = 20; { <^V><E>                            }
  75.   ODF_GoScreen      = 21; { <^V><F><screen>                    }
  76.   ODF_SetCursorType = 22; { <^V><G><type>                      }
  77.   ODF_DrawHLine     = 23; { <^V><H><X1><Y1><type><count>       }
  78.   ODF_DrawVLine     = 24; { <^V><I><X1><Y1><type><count>       }
  79.   ODF_DrawBox       = 25; { <^V><J><X1><Y1><X2><Y2><type>      }
  80.  
  81.   ODF_ReadChar      = 26; { <^V><K><X1><Y1>                    }
  82.   ODF_ReadAttr      = 27; { <^V><L><X1><Y1>                    }
  83.   ODF_WriteAttr     = 28; { <^V><M><X1><Y1><attr>              }
  84.  
  85.   ODF_QueryRegion   = 29; { <^V><N><X1><X2><Y1><Y2>            }
  86.   ODF_ReadRegion    = 30; { <^V><O><X1><X2><Y1><Y2>            }
  87.   ODF_WriteRegion   = 31; { <^V><P><X1><X2><Y1><Y2>            }
  88.  
  89.   ODF_DriverRenew   = 32; { <^V><Q><cols><rows>                }
  90.  
  91.   ODF_WriteCharAt   = 33; { <^V><R><X1><Y1><attr>              }
  92.   ODF_WriteBlockAt  = 34; { <^V><S><X1><Y1><attr><count>       }
  93.   ODF_WriteVertAt   = 35; { <^V><T><X1><Y1><attr><count>       }
  94.  
  95.   ODF_GetScreenSize = 36;
  96.  
  97.   ODF_CursorUp      = 40;
  98.   ODF_CursorDown    = 41;
  99.   ODF_CursorLeft    = 42;
  100.   ODF_CursorRight   = 43;
  101.  
  102.   ODF_RegionScrUp   = 44;
  103.   ODF_RegionScrDown = 45;
  104.   ODF_RegionCopy    = 46;
  105.  
  106.   ODF_RegionFill    = 47;
  107.   ODF_RegionFillA   = 48;
  108.   ODF_RegionFillC   = 49;
  109.  
  110.   ODF_RepeatChar    = 50;
  111.   ODF_RepeatCharAt  = 51;
  112.  
  113.   {ODF_RepeatAttr   = 52; }
  114.   {ODF_RepeatAttrAt = 53; }
  115.  
  116.   {--------------}
  117.  
  118.   ODS_Changed        = 1;
  119.   ODS_Install        = 2;
  120.   ODS_Sequence       = 4;
  121.  
  122.   OLT_UseChar        = 1;
  123.   OLT_ASCII          = 2;
  124.   OLT_UnderLine      = 3;
  125.   OLT_Single         = 4;
  126.   OLT_Double         = 5;
  127.  
  128. Type
  129.  
  130.   POutDriverPacket=^TOutDriverPacket;
  131.  
  132.   TOutDriverProc = Procedure( ODPacket : POutDriverPacket );
  133.  
  134.   TProcName = String[20];
  135.  
  136.   PProcName = ^TProcName;
  137.  
  138.   {----}
  139.  
  140.   TOutDriverPacket = Record
  141.  
  142.     Func          : WORD;
  143.     ID            : Pointer;
  144.     OutDriverProc : TOutDriverProc;
  145.     Name          : PProcName;
  146.     DriverInfo    : Pointer;
  147.  
  148.     Ch            : CHAR;
  149.  
  150.     NumVal        : WORD;
  151.  
  152.     Size          : WORD;
  153.     Buff          : Pointer;
  154.  
  155.     X1            : WORD;
  156.     Y1            : WORD;
  157.     X2            : WORD;
  158.     Y2            : WORD;
  159.  
  160.     TheColor      : WORD;
  161.  
  162.     Attr          : WORD;
  163.  
  164.     Screens       : WORD;
  165.     Cursor        : WORD;
  166.     Mode          : WORD;
  167.  
  168.     LineType      : WORD;
  169.     LineLen       : WORD;
  170.  
  171.     BoxType       : WORD;
  172.  
  173.     BoxTL         : CHAR;
  174.     BoxT          : CHAR;
  175.     BoxTR         : CHAR;
  176.     BoxR          : CHAR;
  177.     BoxBR         : CHAR;
  178.     BoxB          : CHAR;
  179.     BoxBL         : CHAR;
  180.     BoxL          : CHAR;
  181.  
  182.     RegionSize    : LONGINT;
  183.     Region        : Pointer;
  184.  
  185.     Status        : WORD;
  186.  
  187.   End;
  188.  
  189.   POutDriverProc = ^TOutDriverProc;
  190.  
  191.   POutDriverList = ^TOutDriverList;
  192.  
  193.   TOutDriverList = Record
  194.  
  195.     Proc      : TOutDriverProc;
  196.     ID        : Pointer;
  197.     Next      : POutDriverList;
  198.  
  199.   End;
  200.  
  201.   TOutDriverIData = Record
  202.  
  203.     Off     : WORD;
  204.     Name    : TProcName;
  205.  
  206.   END;
  207.  
  208.   POutDriverIData = ^TOutDriverIData;
  209.  
  210. {────────────────────────────────────────────────────────────────────────────}
  211.  
  212. Procedure VOutDriverNew(          Proc           : TOutDriverProc;
  213.                                   Name           : TProcName;
  214.                                   DriverInfo     : Pointer;
  215.                               Var Err            : WORD       );
  216.  
  217. Procedure VOutDriverOff(          Name           : TProcName  );
  218.  
  219. Procedure VOutDriverOn(           Name           : TProcName  );
  220.  
  221. Procedure VOutDriverDispose(      Name           : TProcName  );
  222.  
  223.  
  224. Procedure DefaultOutDriverProc(   ODP            : POutDriverPacket );
  225.  
  226. Procedure VOutWriteChar(          Ch             : Char      );
  227.  
  228. Procedure VOutWriteBlock(         Block          : Pointer;
  229.                                   Size           : WORD      );
  230.  
  231. Procedure VOutWriteString(        S              : STRING    );
  232.  
  233. Procedure VOutWriteBlockVert(     Block          : Pointer;
  234.                                   Size           : WORD      );
  235.  
  236. Procedure VOutWriteStringVert(    S              : STRING    );
  237.  
  238. Procedure VOutWriteCharAt(        X              : WORD;
  239.                                   Y              : WORD;
  240.                                   F              : WORD;
  241.                                   B              : WORD;
  242.                                   Ch             : CHAR      );
  243.  
  244. Procedure VOutWriteBlockAt(       X              : WORD;
  245.                                   Y              : WORD;
  246.                                   F              : WORD;
  247.                                   B              : WORD;
  248.                                   Block          : Pointer;
  249.                                   Size           : WORD      );
  250.  
  251. Procedure VOutWriteStringAt(      X              : WORD;
  252.                                   Y              : WORD;
  253.                                   F              : WORD;
  254.                                   B              : WORD;
  255.                                   S              : STRING    );
  256.  
  257. Procedure VOutWriteBlockVertAt(   X              : WORD;
  258.                                   Y              : WORD;
  259.                                   F              : WORD;
  260.                                   B              : WORD;
  261.                                   Block          : Pointer;
  262.                                   Size           : WORD      );
  263.  
  264. Procedure VOutWriteStringVertAt(  X              : WORD;
  265.                                   Y              : WORD;
  266.                                   F              : WORD;
  267.                                   B              : WORD;
  268.                                   S              : STRING    );
  269.  
  270. Procedure VOutClrEOL;
  271.  
  272. Procedure VOutClrScr;
  273.  
  274. Procedure VOutDelLine;
  275.  
  276. Procedure VOutInsLine;
  277.  
  278. Procedure VOutGotoXY(             X              : WORD;
  279.                                   Y              : WORD      );
  280.  
  281. Procedure VOutWindow(             X1             : WORD;
  282.                                   Y1             : WORD;
  283.                                   X2             : WORD;
  284.                                   Y2             : WORD      );
  285.  
  286. Procedure VOutTextColor(          TheColor       : WORD      );
  287.  
  288. Procedure VOutTextBackGround(     TheColor       : WORD      );
  289.  
  290.  
  291. Function  VOutTextAttrGet                                      : WORD;
  292.  
  293. Procedure VOutTextAttrSet(        Attr           : WORD      );
  294.  
  295.  
  296. Function  VOutWhereX : WORD;
  297.  
  298. Function  VOUtWhereY : WORD;
  299.  
  300. Function  VOutQueryRegion(        X1             : WORD;
  301.                                   Y1             : WORD;
  302.                                   X2             : WORD;
  303.                                   Y2             : WORD      ) : LONGINT;
  304.  
  305. Procedure VOutReadRegion(         X1             : WORD;
  306.                                   Y1             : WORD;
  307.                                   X2             : WORD;
  308.                                   Y2             : WORD;
  309.                                   Region         : Pointer   );
  310.  
  311. Procedure VOutWriteRegion(        X1             : WORD;
  312.                                   Y1             : WORD;
  313.                                   X2             : WORD;
  314.                                   Y2             : WORD;
  315.                                   Region         : Pointer   );
  316.  
  317. Function  VOutCharRead(           X1             : WORD;
  318.                                   Y1             : WORD      ) : CHAR;
  319.  
  320. Function  VOutAttrRead(           X1             : WORD;
  321.                                   Y1             : WORD      ) : BYTE;
  322.  
  323. Procedure VOutAttrWrite(          X1             : WORD;
  324.                                   Y1             : WORD;
  325.                                   Attr           : BYTE      );
  326.  
  327. Procedure VOutGetScreenSize(  Var Rows           : BYTE;
  328.                               Var Cols           : BYTE      );
  329.  
  330. {────────────────────────────────────────────────────────────────────────────}
  331.  
  332.  
  333. ──────────────────────────────────────────────────────────────────────────────
  334.  
  335.  
  336. [FUNCTION]
  337.  
  338. Procedure DefaultOutDriverProc(   ODP       : POutDriverPacket );
  339.  
  340. [PARAMETERS]
  341.  
  342. ODP         Pointer to Out-Driver Packet
  343.  
  344. [RETURNS]
  345.  
  346. (None)
  347.  
  348. [DESCRIPTION]
  349.  
  350. [SEE-ALSO]
  351.  
  352. [EXAMPLE]
  353.  
  354.  
  355. ──────────────────────────────────────────────────────────────────────────────
  356.  
  357.  
  358. [FUNCTION]
  359.  
  360. Procedure CallOutDrivers(         ODP       : POutDriverPacket );
  361.  
  362. [PARAMETERS]
  363.  
  364. ODP         Pointer to Out-Driver Packet
  365.  
  366. [RETURNS]
  367.  
  368. (None)
  369.  
  370. [DESCRIPTION]
  371.  
  372. [SEE-ALSO]
  373.  
  374. [EXAMPLE]
  375.  
  376.  
  377. ──────────────────────────────────────────────────────────────────────────────
  378.  
  379.  
  380. [FUNCTION]
  381.  
  382. Procedure VOutDriverNew(          Proc            : TOutDriverProc;
  383.                                   Name            : TProcName;
  384.                                   DriverInfo      : Pointer;
  385.                               Var Err             : WORD     );
  386.  
  387. [PARAMETERS]
  388.  
  389. Proc        Out-Driver Procedure
  390. Name        ?
  391. DriverInfo  Pointer to Out-Driver Information
  392. Err         VAR Returned Error Code
  393.  
  394. [RETURNS]
  395.  
  396. Function : None
  397. (VAR     : [Err] Error Code) (0=Success)
  398.  
  399. [DESCRIPTION]
  400.  
  401. [SEE-ALSO]
  402.  
  403. [EXAMPLE]
  404.  
  405.  
  406. ──────────────────────────────────────────────────────────────────────────────
  407.  
  408.  
  409. [FUNCTION]
  410.  
  411. Procedure VOutDriverOff(              Name        : TProcName  );
  412.  
  413. [PARAMETERS]
  414.  
  415. Name        ?
  416.  
  417. [RETURNS]
  418.  
  419. (None)
  420.  
  421. [DESCRIPTION]
  422.  
  423. [SEE-ALSO]
  424.  
  425. [EXAMPLE]
  426.  
  427.  
  428. ──────────────────────────────────────────────────────────────────────────────
  429.  
  430.  
  431. [FUNCTION]
  432.  
  433. Procedure VOutDriverOn(               Name        : TProcName  );
  434.  
  435. [PARAMETERS]
  436.  
  437. Name        ?
  438.  
  439. [RETURNS]
  440.  
  441. (None)
  442.  
  443. [DESCRIPTION]
  444.  
  445. [SEE-ALSO]
  446.  
  447. [EXAMPLE]
  448.  
  449.  
  450. ──────────────────────────────────────────────────────────────────────────────
  451.  
  452.  
  453. [FUNCTION]
  454.  
  455. Procedure VOutDriverDispose(          Name        : TProcName  );
  456.  
  457. [PARAMETERS]
  458.  
  459. Name        ?
  460.  
  461. [RETURNS]
  462.  
  463. (None)
  464.  
  465. [DESCRIPTION]
  466.  
  467. [SEE-ALSO]
  468.  
  469. [EXAMPLE]
  470.  
  471.  
  472. ──────────────────────────────────────────────────────────────────────────────
  473.  
  474.  
  475. [FUNCTION]
  476.  
  477. Procedure VOutWriteChar(          Ch             : Char      );
  478.  
  479. [PARAMETERS]
  480.  
  481. Ch          Character to Write
  482.  
  483. [RETURNS]
  484.  
  485. (None)
  486.  
  487. [DESCRIPTION]
  488.  
  489. [SEE-ALSO]
  490.  
  491. [EXAMPLE]
  492.  
  493.  
  494. ──────────────────────────────────────────────────────────────────────────────
  495.  
  496.  
  497. [FUNCTION]
  498.  
  499. Procedure VOutWriteBlock(         Block          : Pointer;
  500.                                   Size           : WORD      );
  501.  
  502. [PARAMETERS]
  503.  
  504. Block       Pointer to Block Data to Write
  505. Size        Size of Block Data in Bytes
  506.  
  507. [RETURNS]
  508.  
  509. (None)
  510.  
  511. [DESCRIPTION]
  512.  
  513. [SEE-ALSO]
  514.  
  515. [EXAMPLE]
  516.  
  517.  
  518. ──────────────────────────────────────────────────────────────────────────────
  519.  
  520.  
  521. [FUNCTION]
  522.  
  523. Procedure VOutWriteString(        S              : STRING    );
  524.  
  525. [PARAMETERS]
  526.  
  527. S           String to Write
  528.  
  529. [RETURNS]
  530.  
  531. (None)
  532.  
  533. [DESCRIPTION]
  534.  
  535. [SEE-ALSO]
  536.  
  537. [EXAMPLE]
  538.  
  539.  
  540. ──────────────────────────────────────────────────────────────────────────────
  541.  
  542.  
  543. [FUNCTION]
  544.  
  545. Procedure VOutWriteBlockVert(     Block          : Pointer;
  546.                                   Size           : WORD      );
  547.  
  548. [PARAMETERS]
  549.  
  550. Block       Pointer to Block Data to Write Vertically
  551. Size        Size of Block Data in Bytes
  552.  
  553. [RETURNS]
  554.  
  555. (None)
  556.  
  557. [DESCRIPTION]
  558.  
  559. [SEE-ALSO]
  560.  
  561. [EXAMPLE]
  562.  
  563.  
  564. ──────────────────────────────────────────────────────────────────────────────
  565.  
  566.  
  567. [FUNCTION]
  568.  
  569. Procedure VOutWriteStringVert(    S              : STRING    );
  570.  
  571. [PARAMETERS]
  572.  
  573. S           String to Write Vertically
  574. [RETURNS]
  575.  
  576. (None)
  577.  
  578. [DESCRIPTION]
  579.  
  580. [SEE-ALSO]
  581.  
  582. [EXAMPLE]
  583.  
  584.  
  585. ──────────────────────────────────────────────────────────────────────────────
  586.  
  587.  
  588. [FUNCTION]
  589.  
  590. Procedure VOutWriteCharAt(        X              : WORD;
  591.                                   Y              : WORD;
  592.                                   F              : WORD;
  593.                                   B              : WORD;
  594.                                   Ch             : Char      );
  595.  
  596. [PARAMETERS]
  597.  
  598. X           X Screen Coordinate
  599. Y           Y Screen Coordinate
  600. F           Foreground Color
  601. B           Background Color
  602. Ch          Character to Write
  603.  
  604. [RETURNS]
  605.  
  606. (None)
  607.  
  608. [DESCRIPTION]
  609.  
  610. [SEE-ALSO]
  611.  
  612. [EXAMPLE]
  613.  
  614.  
  615. ──────────────────────────────────────────────────────────────────────────────
  616.  
  617.  
  618. [FUNCTION]
  619.  
  620. Procedure VOutWriteBlockAt(       X              : WORD;
  621.                                   Y              : WORD;
  622.                                   F              : WORD;
  623.                                   B              : WORD;
  624.                                   Block          : Pointer;
  625.                                   Size           : WORD      );
  626.  
  627. [PARAMETERS]
  628.  
  629. X           X Screen Coordinate
  630. Y           Y Screen Coordinate
  631. F           Foreground Color
  632. B           Background Color
  633. Block       Pointer to Block Data to Write
  634. Size        Size of Block Data in Bytes
  635.  
  636. [RETURNS]
  637.  
  638. (None)
  639.  
  640. [DESCRIPTION]
  641.  
  642. [SEE-ALSO]
  643.  
  644. [EXAMPLE]
  645.  
  646.  
  647. ──────────────────────────────────────────────────────────────────────────────
  648.  
  649.  
  650. [FUNCTION]
  651.  
  652. Procedure VOutWriteStringAt(      X              : WORD;
  653.                                   Y              : WORD;
  654.                                   F              : WORD;
  655.                                   B              : WORD;
  656.                                   S              : STRING    );
  657.  
  658. [PARAMETERS]
  659.  
  660. X           X Screen Coordinate
  661. Y           Y Screen Coordinate
  662. F           Foreground Color
  663. B           Background Color
  664. S           String to Write
  665.  
  666. [RETURNS]
  667.  
  668. (None)
  669.  
  670. [DESCRIPTION]
  671.  
  672. [SEE-ALSO]
  673.  
  674. [EXAMPLE]
  675.  
  676.  
  677. ──────────────────────────────────────────────────────────────────────────────
  678.  
  679.  
  680. [FUNCTION]
  681.  
  682. Procedure VOutWriteBlockVertAt(   X              : WORD;
  683.                                   Y              : WORD;
  684.                                   F              : WORD;
  685.                                   B              : WORD;
  686.                                   Block          : Pointer;
  687.                                   Size           : WORD      );
  688.  
  689. [PARAMETERS]
  690.  
  691. X           X Screen Coordinate
  692. Y           Y Screen Coordinate
  693. F           Foreground Color
  694. B           Background Color
  695. Block       Pointer to Block Data to Write
  696. Size        Size of Block Data in Bytes
  697.  
  698. [RETURNS]
  699.  
  700. (None)
  701.  
  702. [DESCRIPTION]
  703.  
  704. [SEE-ALSO]
  705.  
  706. [EXAMPLE]
  707.  
  708.  
  709. ──────────────────────────────────────────────────────────────────────────────
  710.  
  711.  
  712. [FUNCTION]
  713.  
  714. Procedure VOutWriteStringVertAt(  X              : WORD;
  715.                                   Y              : WORD;
  716.                                   F              : WORD;
  717.                                   B              : WORD;
  718.                                   S              : STRING    );
  719.  
  720. [PARAMETERS]
  721.  
  722. X           X Screen Coordinate
  723. Y           Y Screen Coordinate
  724. F           Foreground Color
  725. B           Background Color
  726. S           String to Write
  727.  
  728. [RETURNS]
  729.  
  730. (None)
  731.  
  732. [DESCRIPTION]
  733.  
  734. [SEE-ALSO]
  735.  
  736. [EXAMPLE]
  737.  
  738.  
  739. ──────────────────────────────────────────────────────────────────────────────
  740.  
  741.  
  742. [FUNCTION]
  743.  
  744. Procedure VOutClrEOL;
  745.  
  746. [PARAMETERS]
  747.  
  748. (None)
  749.  
  750. [RETURNS]
  751.  
  752. (None)
  753.  
  754. [DESCRIPTION]
  755.  
  756. [SEE-ALSO]
  757.  
  758. [EXAMPLE]
  759.  
  760.  
  761. ──────────────────────────────────────────────────────────────────────────────
  762.  
  763.  
  764. [FUNCTION]
  765.  
  766. Procedure VOutClrScr;
  767.  
  768. [PARAMETERS]
  769.  
  770. (None)
  771.  
  772. [RETURNS]
  773.  
  774. (None)
  775.  
  776. [DESCRIPTION]
  777.  
  778. [SEE-ALSO]
  779.  
  780. [EXAMPLE]
  781.  
  782.  
  783. ──────────────────────────────────────────────────────────────────────────────
  784.  
  785.  
  786. [FUNCTION]
  787.  
  788. Procedure VOutDelLine;
  789.  
  790. [PARAMETERS]
  791.  
  792. (None)
  793.  
  794. [RETURNS]
  795.  
  796. (None)
  797.  
  798. [DESCRIPTION]
  799.  
  800. [SEE-ALSO]
  801.  
  802. [EXAMPLE]
  803.  
  804.  
  805. ──────────────────────────────────────────────────────────────────────────────
  806.  
  807.  
  808. [FUNCTION]
  809.  
  810. Procedure VOutInsLine;
  811.  
  812. [PARAMETERS]
  813.  
  814. (None)
  815.  
  816. [RETURNS]
  817.  
  818. (None)
  819.  
  820. [DESCRIPTION]
  821.  
  822. [SEE-ALSO]
  823.  
  824. [EXAMPLE]
  825.  
  826.  
  827. ──────────────────────────────────────────────────────────────────────────────
  828.  
  829.  
  830. [FUNCTION]
  831.  
  832. Procedure VOutGotoXY(             X              : WORD;
  833.                                   Y              : WORD      );
  834.  
  835. [PARAMETERS]
  836.  
  837. X           New X Screen Coordinate
  838. Y           New Y Screen Coordinate
  839.  
  840. [RETURNS]
  841.  
  842. (None)
  843.  
  844. [DESCRIPTION]
  845.  
  846. [SEE-ALSO]
  847.  
  848. [EXAMPLE]
  849.  
  850.  
  851. ──────────────────────────────────────────────────────────────────────────────
  852.  
  853.  
  854. [FUNCTION]
  855.  
  856. Procedure VOutWindow(             X1             : WORD;
  857.                                   Y1             : WORD;
  858.                                   X2             : WORD;
  859.                                   Y2             : WORD      );
  860.  
  861. [PARAMETERS]
  862.  
  863. X1          Window Left Screen Coordinate
  864. Y1          Window Top Screen Coordinate
  865. X2          Window Right Screen Coordinate
  866. Y2          Window Bottom Screen Coordinate
  867.  
  868. [RETURNS]
  869.  
  870. (None)
  871.  
  872. [DESCRIPTION]
  873.  
  874. [SEE-ALSO]
  875.  
  876. [EXAMPLE]
  877.  
  878.  
  879. ──────────────────────────────────────────────────────────────────────────────
  880.  
  881.  
  882. [FUNCTION]
  883.  
  884. Procedure VOutTextColor(          TheColor       : WORD      );
  885.  
  886. [PARAMETERS]
  887.  
  888. TheColor    New Text Foreground Color
  889.  
  890. [RETURNS]
  891.  
  892. (None)
  893.  
  894. [DESCRIPTION]
  895.  
  896. [SEE-ALSO]
  897.  
  898. [EXAMPLE]
  899.  
  900.  
  901. ──────────────────────────────────────────────────────────────────────────────
  902.  
  903.  
  904. [FUNCTION]
  905.  
  906. Procedure VOutTextBackGround(     TheColor       : WORD      );
  907.  
  908. [PARAMETERS]
  909.  
  910. TheColor    New Text Background Color
  911.  
  912. [RETURNS]
  913.  
  914. (None)
  915.  
  916. [DESCRIPTION]
  917.  
  918. [SEE-ALSO]
  919.  
  920. [EXAMPLE]
  921.  
  922.  
  923. ──────────────────────────────────────────────────────────────────────────────
  924.  
  925.  
  926. [FUNCTION]
  927.  
  928. Function VOutTextAttrGet                                      : WORD;
  929.  
  930. [PARAMETERS]
  931.  
  932. (None)
  933.  
  934. [RETURNS]
  935.  
  936. Current Text Attribute
  937.  
  938. [DESCRIPTION]
  939.  
  940. [SEE-ALSO]
  941.  
  942. [EXAMPLE]
  943.  
  944.  
  945. ──────────────────────────────────────────────────────────────────────────────
  946.  
  947.  
  948. [FUNCTION]
  949.  
  950. Procedure VOutTextAttrSet(        Attr           : WORD      );
  951.  
  952. [PARAMETERS]
  953.  
  954. Attr        New Text Attribute
  955.  
  956. [RETURNS]
  957.  
  958. (None)
  959.  
  960. [DESCRIPTION]
  961.  
  962. [SEE-ALSO]
  963.  
  964. [EXAMPLE]
  965.  
  966.  
  967. ──────────────────────────────────────────────────────────────────────────────
  968.  
  969.  
  970. [FUNCTION]
  971.  
  972. Function VOutWhereX                                           : WORD;
  973.  
  974. [PARAMETERS]
  975.  
  976. (None)
  977.  
  978. [RETURNS]
  979.  
  980. Current Cursor X Screen Coordinate
  981.  
  982. [DESCRIPTION]
  983.  
  984. [SEE-ALSO]
  985.  
  986. [EXAMPLE]
  987.  
  988.  
  989. ──────────────────────────────────────────────────────────────────────────────
  990.  
  991.  
  992. [FUNCTION]
  993.  
  994. Function VOutWhereY                                           : WORD;
  995.  
  996. [PARAMETERS]
  997.  
  998. (None)
  999.  
  1000. [RETURNS]
  1001.  
  1002. Current Cursor Y Screen Coordinate
  1003.  
  1004. [DESCRIPTION]
  1005.  
  1006. [SEE-ALSO]
  1007.  
  1008. [EXAMPLE]
  1009.  
  1010.  
  1011. ──────────────────────────────────────────────────────────────────────────────
  1012.  
  1013.  
  1014. [FUNCTION]
  1015.  
  1016. Function  VOutQueryRegion(        X1             : WORD;
  1017.                                   Y1             : WORD;
  1018.                                   X2             : WORD;
  1019.                                   Y2             : WORD          ): LONGINT;
  1020.  
  1021. [PARAMETERS]
  1022.  
  1023. X1          Region Left Screen Coordinate
  1024. Y1          Region Top Screen Coordinate
  1025. X2          Region Right Screen Coordinate
  1026. Y2          Region Bottom Screen Coordinate
  1027.  
  1028. [RETURNS]
  1029.  
  1030. [DESCRIPTION]
  1031.  
  1032. [SEE-ALSO]
  1033.  
  1034. [EXAMPLE]
  1035.  
  1036.  
  1037. ──────────────────────────────────────────────────────────────────────────────
  1038.  
  1039.  
  1040. [FUNCTION]
  1041.  
  1042. Procedure VOutReadRegion(         X1             : WORD;
  1043.                                   Y1             : WORD;
  1044.                                   X2             : WORD;
  1045.                                   Y2             : WORD;
  1046.                                   Region         : Pointer       );
  1047.  
  1048. [PARAMETERS]
  1049.  
  1050. X1          Region Left Screen Coordinate
  1051. Y1          Region Top Screen Coordinate
  1052. X2          Region Right Screen Coordinate
  1053. Y2          Region Bottom Screen Coordinate
  1054. Region      Pointer to Region Read Data
  1055.  
  1056. [RETURNS]
  1057.  
  1058. (None)
  1059.  
  1060. [DESCRIPTION]
  1061.  
  1062. [SEE-ALSO]
  1063.  
  1064. [EXAMPLE]
  1065.  
  1066.  
  1067. ──────────────────────────────────────────────────────────────────────────────
  1068.  
  1069.  
  1070. [FUNCTION]
  1071.  
  1072. Procedure VOutWriteRegion(        X1             : WORD;
  1073.                                   Y1             : WORD;
  1074.                                   X2             : WORD;
  1075.                                   Y2             : WORD;
  1076.                                   Region         : Pointer       );
  1077.  
  1078. [PARAMETERS]
  1079.  
  1080. X1          Region Left Screen Coordinate
  1081. Y1          Region Top Screen Coordinate
  1082. X2          Region Right Screen Coordinate
  1083. Y2          Region Bottom Screen Coordinate
  1084. Region      Pointer to Region Write Data
  1085.  
  1086. [RETURNS]
  1087.  
  1088. (None)
  1089.  
  1090. [DESCRIPTION]
  1091.  
  1092. [SEE-ALSO]
  1093.  
  1094. [EXAMPLE]
  1095.  
  1096.  
  1097. ──────────────────────────────────────────────────────────────────────────────
  1098.  
  1099.  
  1100. [FUNCTION]
  1101.  
  1102. Function  VOutCharRead(           X1             : WORD;
  1103.                                   Y1             : WORD          ):CHAR;
  1104.  
  1105. [PARAMETERS]
  1106.  
  1107. X1          X Screen Coordinate
  1108. Y1          Y Screen Coordinate
  1109.  
  1110. [RETURNS]
  1111.  
  1112. Character Read at Screen Coordinates
  1113.  
  1114. [DESCRIPTION]
  1115.  
  1116. [SEE-ALSO]
  1117.  
  1118. [EXAMPLE]
  1119.  
  1120.  
  1121. ──────────────────────────────────────────────────────────────────────────────
  1122.  
  1123.  
  1124. [FUNCTION]
  1125.  
  1126. Function  VOutAttrRead(           X1             : WORD;
  1127.                                   Y1             : WORD          ):BYTE;
  1128.  
  1129. [PARAMETERS]
  1130.  
  1131. X1          X Screen Coordinate
  1132. Y1          Y Screen Coordinate
  1133.  
  1134. [RETURNS]
  1135.  
  1136. Attribute Read at Screen Coordinates
  1137.  
  1138. [DESCRIPTION]
  1139.  
  1140. [SEE-ALSO]
  1141.  
  1142. [EXAMPLE]
  1143.  
  1144.  
  1145. ──────────────────────────────────────────────────────────────────────────────
  1146.  
  1147.  
  1148. [FUNCTION]
  1149.  
  1150. Procedure VOutAttrWrite(          X1             : WORD;
  1151.                                   Y1             : WORD;
  1152.                                   Attr           : BYTE          );
  1153.  
  1154. [PARAMETERS]
  1155.  
  1156. X1          X Screen Coordinate
  1157. Y1          Y Screen Coordinate
  1158. Attr        Attribute to Write
  1159.  
  1160. [RETURNS]
  1161.  
  1162. (None)
  1163.  
  1164. [DESCRIPTION]
  1165.  
  1166. [SEE-ALSO]
  1167.  
  1168. [EXAMPLE]
  1169.  
  1170.  
  1171. ──────────────────────────────────────────────────────────────────────────────
  1172.  
  1173.  
  1174. [FUNCTION]
  1175.  
  1176. Procedure VOutGetScreenSize(  Var Rows           : BYTE;
  1177.                               Var Cols           : BYTE      );
  1178.  
  1179. [PARAMETERS]
  1180.  
  1181. Rows        VAR Returned Screen Height
  1182. Cols        VAR Returned Screen Width
  1183.  
  1184. [RETURNS]
  1185.  
  1186. Function : None
  1187. (VAR     : [Rows] Screen Height)
  1188. (VAR     : [Cols] Screen Width)
  1189.  
  1190. [DESCRIPTION]
  1191.  
  1192. [SEE-ALSO]
  1193.  
  1194. [EXAMPLE]
  1195.  
  1196.